פריצת סיסמה של מחשבון של CYBER CHAOS הנבנה בVB
כותב: XiR0x
רמה: קל - בינוני
טוב אז לא ממזמן בפורום ניתקלתי בבקשה לגיליון 7 של Cyber Chaos
עכשיו סתם הורדתי את הגיליון, רציתי לדעת אם אי פעם בכלל שמעתי על קבוצה כזו אז התשובה היא לא אך בגיליון נתקלתי בתוכנה
של מחשבון עם סיסמה בהתחלה calc.exe עכשיו אני ממש התעצבנתי, מזה זה אני רוצה מחשבון אמרתי לעצמי,
מי שתכנת את המחשבון הזה הוא TyLerDiRDen (מי??)
הוא גם עשה מדריך – "תיאור קצר: בניית מחשבון והגנה עליו בסיסמא(WtF?!) בוי.בי"
אז כמו שכתוב בתיאור המחשבון נבנה בוויבי.
עכשיו וויבי היא לא שפה כמו סי, דלפי, אסמבלי או שפות מקומפלות אחרות, כי וויבי היא שפה מתורגמת ולכן אי אפשר נורמלי
לראות את הסטרינגים שלה וגם הקוד שלה שונה(הסינטקס). בגלל זה היא קשה לפיצוח ונוראית למתחילים קיצר שפה מסריחה.
אך זה לא מה שימנע מאיתנו לעשות 2+3 במחשבון.
לפניי שאנו מתחילים תוודאו שקראתם את המדריכים שלי ושל Stealth_Fighter בנוגע לקראקינג ורוורסינג בגיליון הראשון.
המדריך מחולק ל2 חלקים, החלק הקל- הפאטצ'ינג, שינוי הפקודה כך שכל סיסמה תתאים והחלק הקצת יותר קשה – מציאת הסיסמה.
אז קודם סתם נריץ את המחשבון לראות איך הוא, מבקשים סיסמה, והכל נראה נורמלי, אפשר לבדוק גם עם פייד.
אז פתחו אולי - OLLY ואת ה CALC.exe, קודם נימצא את הסיסמה ואז נעשה את הפאטצ'נג, רק חשוב שאני יסביר קודם על כמה אפיס,
פונקציות, שמשומשות בתוכניות VB
ֹ___VbaStrCmp
הפונקציה משווה 2 סטרינגים
#595 / rtc.MsgBox
תיבת הודעה\נאג\מסג' בוקס
אז מה שאנו נעשה זה נשים ברייקפויינט ב ֹ___VbaStrCmp כך שנגיע למקום בו יש את ההשוואה.
אוקיי אז אנו ניכנס לחלון הפונקציות שהתוכנית משתמשת בהם על ידי לחיצה CTRL + N על ה EXECUTABLE MODULS
ומסתכלים על הפונקציות שיש, הופה מצאנו ֹ___VbaStrCmp
עכשיו עושים כפתור ימני ו SET BREAKPOINT ON EVERY REFERNCE
אז עכשיו נריץ את התוכנית דרך הדיבאגרר על ידי לחיצה על הכפתור הזה של ה"PLAY"
נכניס לדוגמה את הסיסמה 12345 ונעשה בדיקה והנה זה עצר לנו
עכשיו סתכלו בחלון הימני באמצע, זה החלון של הזיכרון, אתם צריכים לראות משהו כזה:
F458 00401E34 Calc.00401E34
0012F45C 0014B27C UNICODE "12345"
אז הפונקציה משווה את מה שהכנסנו 12345 עם Calc.00401E34
הכוונה שהסיסמה שלנו נימצאת בכתובת 00401E34.
עכשיו בישביל שנדע מה שיש בכתובת הזו נעשה שיראה לנו את הסטרינג שיש שם בבייט בייט בכך
שנלחץ אל ALT+F1 ונרשום db 00401E34""
עכשיו זה מראה לנו ביט בייט בחלון של ההקס.
מה שזה מראה שם זה:
DE 05 E0 05 D9 05 D0 05 E7 05 00 00
אנו נצטרך לתרגם את הערכים הללו. מכיוון ש 05 לא ניחשב כאסקי סטנדרתי אז זה כניראה עברית לכן אנו נצטרך
טבלה שתאפשר לנו לתרגם לעברית:
http://cs.haifa.ac.il/~shlomo/hebrew_and_perl/slides/U0590.pdf
ה05 שבסוף וה DE מתחברים ואם תבדקו בטבלה 05DE זה האות 'מ'
נמשיך הלאה
05E0 זה 'נ'
05D9 זה 'י'
05D0 זה 'א'
05E7 זה 'ק'
ה 00 מסמל סיום מחרוזת
אז בכללי הסיסמה שיצאה לנו זה 'מ' 'נ' 'י' 'א' 'ק' אז בואו ננסה להכניס את הססמה מניאק לתוכנה ומצויין זה עובד!!!!
עכשיו נוכל לעשות חישובים מסובכים מאד כמו 2+3 5+5 וכו..
וכן אנו מרגישים מניאקים שהצלחנו וhell yea ההרגשה הזו טובה!
---------------------------------------------------------------------------
כמו שהבטחתי עכשיו נעשה את הפאטצ'ינג, החלק הקל.
עכשיו אני רציתי לראות את הקוד שלפניי המסג'בוקס כי אמור להיות שם איפשהו לפני השוואה, קפיצה מותנית ולכן
שמתי ברייקפוינט ב#595 (מסג' בוקס) והרצתי את התוכנית מהדיבאגר. זה עצר לנו הפעם לא חשוב איזה סיסמה מכניסים
( העיקר שלא תהיה הסיסמה הנכונה כי אז לא יהיה מסג' בוקס), זה עצר לי בכתובת 403330 אז עכשיו צריך להיסתכל
למעלה ולחפש אחר דברים "חשודים" עכשיו בכתובת 4032E9 יש חץ כזה <
האומר שיש קפיצה לאותה כתובת מאיפשהו, כשאנו מסמנים את הכתובת רשום לנו מאיפה הקפיצה, עכשיו הכתובת ששמה
צריכה להיות מה שאנו מחפשים, למה? אמ.. קשה לענות אבל במיוחד מכיוון שגם אין שום קפיצה מהכתובת 4032E9
עד איפה שנחתנו אלה זה הכל קוד המסג' בוקס ואין שום סיבה שיופיע ה"נאג" הזה אלה אם כן לא הכנסנו סיסמה נכונה,
לכן כמו שרשום לכו לכתובת 40326C והופה הגענו לפה:
00403269 BF7 CMP SI,DI
0040326C 74 7B JE SHORT Calc.004032E9
יש כאן השוואה (לא השוואה של 2 הסטרינגים)ואז יש קפיצה מותנית(קפיצת תנאי) לכן בוא נשנה את JE ל-JNE או ל-JNE או לNOP
עכשיו בואו נשמור כמו שלמדתי אתכם במדריכים בגיליון הראשון וזהו OUR WORK HERE IS DONE
אתם יכולים להיות מבסוטים מעצמכם
תודה מיוחדת לCrosbow ולSBD אשר עזרו לי עם טבלת היוניקוד לתווים בעברית.
עד הטקסט הבא,
XiR0x aka BlackSheep